#基础类型 字符替换 ，key 后边 ‘?c’ 代表 使用c函数以字符串输出内容，默认不支持 boolean类型输出
# 使用 ！或者 ?? 两种方式来处理字段或者对象为空，如果不处理，会导致失败
1.byte类型：${byteKey?c}
2.short类型：${shortKey?c}
3.int类型：${intKey?c}
4.long类型：${longKey?c}
5.float类型：${floatKey?c}
6.double类型：${doubleKey?c}
7.char类型：${charKey}
8.boolean类型：${booleanKey?string('是','否')}

#数组类型
<#list intArray as i>
    数组位置${i} : ${i + 1}
</#list>

数组第一个元素：${intArray[0]}

#set 等同于 list

#list类型 -- 对象(必须不能为内部类，只能是public class，实体类中的字段为boolean定义，必须改为Boolean，否则输出失败)
<#if personList ??>
<#list personList as p>
   id : ${p.id!''}, 姓名：${p.name!''}
   ${p}
</#list>
</#if>

#map类型 m1代表指定的map, '?keys' 循环这个map的key, mk1是每个key的别名，m1[mk1]取出key对应的value
<#list m1?keys as mk1>
    ${mk1} :
    <#list m1[mk1] as person>
        ${person.id} --- ${person.name}
    </#list>
</#list>


#if else 标签使用
<#if intArray[0] == 100>
    数组第一个元素等于100
<#else>
    数组第一个元素不等于100
</#if>

<#--注释代码不输出内容 -->


